就如同現在我們使用手機會有APP或網頁,XR也有APP或網頁,XR APP主流是用Unity和Unreal Engine。順帶一提,Apple vision pro需要用他自己出的sdk開發。XR APP固然有更多發揮空間,像是更多的控制權限、更優秀的效能和完成的引擎。APP的缺點是需要透過應用程式商店下載安裝,所以就如同手機APP,內容的更新和上架都需要透過個別的應用程式商店,然而現在大家都想搶當XR的首選平台,目前是百家爭鳴的狀況,有Meta Quest Store(for Quest主機)、Pico Store(for Pico 主機)、PlayStation Store (for PS主機)、 visionOS 的 App Store(for Apple vision pro)、Viveport(HTC 官方商店可)、SteamVR(PCVR可用steamVR連線主機),上述只有最後兩個(Viveport和SteamVR)可以跨品牌,可想而知會需要花比較多力氣在不同平台上架及更新。
WebXR應用的優勢--只需用有支援WebXR的瀏覽器版本開啟網頁就能直接載入,如果是在頭戴裝置中是可以直接選擇VR顯示,網頁的特性大家都很熟悉,像是跨裝置能力強,更新快速不須打包等,以及他的缺點如不比原生APP能控制硬體,沒有能力自己儲存資料等。
開發方式 | 主要語言 | 特點 |
---|---|---|
Unity | C# | 生態成熟、跨平台性強、資源豐富 |
Unreal Engine | C++ / Blueprints | 頂級畫質、視覺化腳本強大,但學習曲線陡峭、對硬體要求高 |
JavaScript (WebXR) | JavaScript / TypeScript | 無須安裝,開發快速、跨平台只要能開網頁就能跨裝置開啟 |
原生 SDK (如 visionOS) | Swift / C++ | 效能極致、可存取最新硬體功能,但僅限特定平台、開發複雜度高 |
關於XR,Microsoft這邊有相關的第一步教學
https://learn.microsoft.com/zh-tw/windows/mixed-reality/develop/development
如果想了解Unity 或 Unreal要怎麼開始進行第一步來開發XR,也很推薦可以跟著Microsoft教學做做看。而接下來我們會來聚焦在WebXR要如何開發上,並且會從易到難的安排順序。
關於WebXR有件重要的事要先釐清,目前坊間對於”WebXR”這個名稱會有兩種完全不同的東西,目前只能透過上下文來判斷人家寫的是哪一種:
一種是很直觀的指用Web技術開發的XR應用程式;
另一種是指**WebXR Device API (**簡稱WebXR),是開發WebXR的核心,他的幾個重要功能有:
也就是要讓XR好好運行在瀏覽器上的重要API!只需要點擊一個連結或掃描QR Code,瀏覽器就會直接啟動 VR/AR 體驗。由 W3C 的「沉浸式網頁工作組」共同制定並於2023年提升為正式的標準。制定成員包括了 Google, Meta, Microsoft, Apple, Mozilla 等所有主流科技巨頭。大可以放心它的標準化和跨平台特性,使用頭戴裝置時可以用VR開啟, 也可以在支援WeXR的瀏覽器版本用手機以 AR 模式開啟。WebXR顧名思義可以理解是可以跑在網頁上的,所以不管是頭戴裝置還是行動裝置,只要是能把網頁打開,基本上都是可以運行的。
因為做一個跨支援跨裝置且能用前端開發經驗的AR作品。那麼這樣比較下來,WebXR會比較符合我的需求,所以接下來就要開始了解要怎麼開始做WebXR應用軟體囉!